package leedcode_path.treeNoDE;

import javax.sound.midi.MidiChannel;

public class 将有序数组转换为二叉搜索树 {
    /*
    * 给你一个整数数组 nums ，其中元素已经按 升序 排列，请你将其转换为一棵
平衡
 二叉搜索树。
 *
 * 相当于就是给你应该中序遍历，让你写个平衡二叉树，跟中序后序构造二叉树应该差不多。
 * */
    public TreeNode sortedArrayToBST(int[] nums) {
        if (nums==null) return null;
        return  bulidTree(nums,0,nums.length);

    }
    public  TreeNode bulidTree(int[] nums,int left,int right){
        if (left==right) return null;
        int mid=left+(right-left)/2;
        TreeNode root= new TreeNode(nums[mid]);

        int leftstart=left;
        int leftend=mid;

        int rightstart=mid+1;
        int rightend=right;

        root.left=bulidTree(nums,leftstart,leftend);
        root.right=bulidTree(nums,rightstart,rightend);
        return root;
    }

}
